package cn.dmp.tags

import org.apache.commons.lang.StringUtils
import org.apache.spark.sql.Row


// 2
/**
  * App相关的打标
  * App 名称（标签格式： APPxxxx->1）xxxx 为 App 名称，使用字典文件 appname_dict 进行名称转换； APP爱奇艺->1
  */
object Tags4_App extends Tags {
  /**
    * 打标签的方法定义。参数是可变的，返回一个Map[String, Int]类型的
    *
    * @param args
    * @return
    */
  override def makeTags(args: Any*): Map[String, Int] = {

    var map = Map[String,Int]()
    val row = args(0).asInstanceOf[Row]
    val appDict: Map[String, String] = args(1).asInstanceOf[Map[String, String]]

    val appId = row.getAs[String]("Appid")
    val appName = row.getAs[String]("Appname")

    if (StringUtils.isEmpty(appName)){
      appDict.contains(appId) match {
        case true => map += (("APP" + appDict.get(appId), 1))
      }
    }

    map
  }


}
